-
Notifications
You must be signed in to change notification settings - Fork 255
/
TableEntityAdapter`1.xml
209 lines (209 loc) · 15.9 KB
/
TableEntityAdapter`1.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
<Type Name="TableEntityAdapter<T>" FullName="Microsoft.Azure.Cosmos.Table.TableEntityAdapter<T>">
<TypeSignature Language="C#" Value="public class TableEntityAdapter<T> : Microsoft.Azure.Cosmos.Table.TableEntity" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit TableEntityAdapter`1<T> extends Microsoft.Azure.Cosmos.Table.TableEntity" />
<TypeSignature Language="DocId" Value="T:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1" />
<TypeSignature Language="VB.NET" Value="Public Class TableEntityAdapter(Of T)
Inherits TableEntity" />
<TypeSignature Language="F#" Value="type TableEntityAdapter<'T> = class
 inherit TableEntity" />
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table</AssemblyName>
<AssemblyVersion>1.0.8.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table.Client</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<TypeParameters>
<TypeParameter Name="T" />
</TypeParameters>
<Base>
<BaseTypeName>Microsoft.Azure.Cosmos.Table.TableEntity</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<typeparam name="T">The type of object to read and write to Azure Table Storage, it can be a class or a struct.</typeparam>
<summary>
Adapter class to allow reading and writing objects to Azure Table Storage without inheriting from <see cref="T:Microsoft.Azure.Cosmos.Table.TableEntity" /> class
or implementing <see cref="T:Microsoft.Azure.Cosmos.Table.ITableEntity" /> interface. The objects can be simple POCO objects or complex objects with nested complex properties.
</summary>
<remarks>To be added.</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public TableEntityAdapter ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberSignature Language="DocId" Value="M:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.#ctor" />
<MemberSignature Language="VB.NET" Value="Public Sub New ()" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table</AssemblyName>
<AssemblyVersion>1.0.8.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table.Client</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters />
<Docs>
<summary>
Initializes a new instance of the <see cref="T:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1" /> class.
</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public TableEntityAdapter (T originalEntity);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(!T originalEntity) cil managed" />
<MemberSignature Language="DocId" Value="M:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.#ctor(`0)" />
<MemberSignature Language="VB.NET" Value="Public Sub New (originalEntity As T)" />
<MemberSignature Language="F#" Value="new Microsoft.Azure.Cosmos.Table.TableEntityAdapter<'T> : 'T -> Microsoft.Azure.Cosmos.Table.TableEntityAdapter<'T>" Usage="new Microsoft.Azure.Cosmos.Table.TableEntityAdapter<'T> originalEntity" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table</AssemblyName>
<AssemblyVersion>1.0.8.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table.Client</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="originalEntity" Type="T" />
</Parameters>
<Docs>
<param name="originalEntity">The object to write to Azure Table Storage.</param>
<summary>
Initializes a new instance of the <see cref="T:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1" /> class with the specified object.
</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public TableEntityAdapter (T originalEntity, string partitionKey, string rowKey);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(!T originalEntity, string partitionKey, string rowKey) cil managed" />
<MemberSignature Language="DocId" Value="M:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.#ctor(`0,System.String,System.String)" />
<MemberSignature Language="VB.NET" Value="Public Sub New (originalEntity As T, partitionKey As String, rowKey As String)" />
<MemberSignature Language="F#" Value="new Microsoft.Azure.Cosmos.Table.TableEntityAdapter<'T> : 'T * string * string -> Microsoft.Azure.Cosmos.Table.TableEntityAdapter<'T>" Usage="new Microsoft.Azure.Cosmos.Table.TableEntityAdapter<'T> (originalEntity, partitionKey, rowKey)" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table</AssemblyName>
<AssemblyVersion>1.0.8.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table.Client</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="originalEntity" Type="T" />
<Parameter Name="partitionKey" Type="System.String" />
<Parameter Name="rowKey" Type="System.String" />
</Parameters>
<Docs>
<param name="originalEntity">The object to write to Azure Table Storage.</param>
<param name="partitionKey">A string containing the partition key value for the entity.</param>
<param name="rowKey">A string containing the row key value for the entity.</param>
<summary>
Initializes a new instance of the <see cref="T:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1" /> class with the specified object, partition key and row key.
</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="OriginalEntity">
<MemberSignature Language="C#" Value="public T OriginalEntity { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance !T OriginalEntity" />
<MemberSignature Language="DocId" Value="P:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.OriginalEntity" />
<MemberSignature Language="VB.NET" Value="Public Property OriginalEntity As T" />
<MemberSignature Language="F#" Value="member this.OriginalEntity : 'T with get, set" Usage="Microsoft.Azure.Cosmos.Table.TableEntityAdapter<'T>.OriginalEntity" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table</AssemblyName>
<AssemblyVersion>1.0.8.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table.Client</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>T</ReturnType>
</ReturnValue>
<Docs>
<summary>
The original entity that is read and written to azure table storage.
</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="ReadEntity">
<MemberSignature Language="C#" Value="public override void ReadEntity (System.Collections.Generic.IDictionary<string,Microsoft.Azure.Cosmos.Table.EntityProperty> properties, Microsoft.Azure.Cosmos.Table.OperationContext operationContext);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance void ReadEntity(class System.Collections.Generic.IDictionary`2<string, class Microsoft.Azure.Cosmos.Table.EntityProperty> properties, class Microsoft.Azure.Cosmos.Table.OperationContext operationContext) cil managed" />
<MemberSignature Language="DocId" Value="M:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.ReadEntity(System.Collections.Generic.IDictionary{System.String,Microsoft.Azure.Cosmos.Table.EntityProperty},Microsoft.Azure.Cosmos.Table.OperationContext)" />
<MemberSignature Language="VB.NET" Value="Public Overrides Sub ReadEntity (properties As IDictionary(Of String, EntityProperty), operationContext As OperationContext)" />
<MemberSignature Language="F#" Value="override this.ReadEntity : System.Collections.Generic.IDictionary<string, Microsoft.Azure.Cosmos.Table.EntityProperty> * Microsoft.Azure.Cosmos.Table.OperationContext -> unit" Usage="tableEntityAdapter.ReadEntity (properties, operationContext)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table</AssemblyName>
<AssemblyVersion>1.0.8.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table.Client</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="properties" Type="System.Collections.Generic.IDictionary<System.String,Microsoft.Azure.Cosmos.Table.EntityProperty>" />
<Parameter Name="operationContext" Type="Microsoft.Azure.Cosmos.Table.OperationContext" />
</Parameters>
<Docs>
<param name="properties">An <see cref="T:System.Collections.Generic.IDictionary`2" /> object that maps property names to typed <see cref="T:Microsoft.Azure.Cosmos.Table.EntityProperty" /> values.</param>
<param name="operationContext">An <see cref="T:Microsoft.Azure.Cosmos.Table.OperationContext" /> object that represents the context for the current operation.</param>
<summary>
Deserializes <see cref="T:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1" /> instance using the specified <see cref="T:System.Collections.Generic.IDictionary`2" /> that maps property names of the
<see cref="P:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.OriginalEntity" /> to typed <see cref="T:Microsoft.Azure.Cosmos.Table.EntityProperty" /> values and stores it in the <see cref="P:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.OriginalEntity" /> property.
</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="WriteEntity">
<MemberSignature Language="C#" Value="public override System.Collections.Generic.IDictionary<string,Microsoft.Azure.Cosmos.Table.EntityProperty> WriteEntity (Microsoft.Azure.Cosmos.Table.OperationContext operationContext);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance class System.Collections.Generic.IDictionary`2<string, class Microsoft.Azure.Cosmos.Table.EntityProperty> WriteEntity(class Microsoft.Azure.Cosmos.Table.OperationContext operationContext) cil managed" />
<MemberSignature Language="DocId" Value="M:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.WriteEntity(Microsoft.Azure.Cosmos.Table.OperationContext)" />
<MemberSignature Language="VB.NET" Value="Public Overrides Function WriteEntity (operationContext As OperationContext) As IDictionary(Of String, EntityProperty)" />
<MemberSignature Language="F#" Value="override this.WriteEntity : Microsoft.Azure.Cosmos.Table.OperationContext -> System.Collections.Generic.IDictionary<string, Microsoft.Azure.Cosmos.Table.EntityProperty>" Usage="tableEntityAdapter.WriteEntity operationContext" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table</AssemblyName>
<AssemblyVersion>1.0.8.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Microsoft.Azure.Cosmos.Table.Client</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Collections.Generic.IDictionary<System.String,Microsoft.Azure.Cosmos.Table.EntityProperty></ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="operationContext" Type="Microsoft.Azure.Cosmos.Table.OperationContext" />
</Parameters>
<Docs>
<param name="operationContext">An <see cref="T:Microsoft.Azure.Cosmos.Table.OperationContext" /> object that represents the context for the current operation.</param>
<summary>
Serializes the <see cref="T:System.Collections.Generic.IDictionary`2" /> of property names mapped to <see cref="T:Microsoft.Azure.Cosmos.Table.EntityProperty" /> data values from the <see cref="P:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.OriginalEntity" /> property.
</summary>
<returns>An <see cref="T:System.Collections.Generic.IDictionary`2" /> object that maps string property names to <see cref="T:Microsoft.Azure.Cosmos.Table.EntityProperty" /> typed values created by
serializing this table entity instance.</returns>
<remarks>If <see cref="P:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.OriginalEntity" /> is a simple POCO object with simple properties (primitive types, string, byte[], ...), <see cref="M:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.WriteEntity(Microsoft.Azure.Cosmos.Table.OperationContext)" /> method will create
<see cref="T:Microsoft.Azure.Cosmos.Table.EntityProperty" /> objects using these properties.<br />
Ie. A simple POCO object A with properties of B and C with this structure A->B, A->C, will be converted to key value pairs of {"B", EntityProperty(B)}, {"C", EntityProperty(C)}.<br />
If <see cref="P:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.OriginalEntity" /> has complex properties (and potentially these properties having complex properties of their own), <see cref="M:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.WriteEntity(Microsoft.Azure.Cosmos.Table.OperationContext)" /> method will flatten <see cref="P:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.OriginalEntity" /> first.<br />
Ie. An object A with a simple property of B and complex properties of C and D which have their own properties of E and F with this structure A->B, A->C->E and A->D->F, will be flattened to key value pairs of:<br />
{"B", EntityProperty(B)}, {"C_E", EntityProperty(E)} and {"D_F", EntityProperty(F)}.<br />
For each key value pair:<br />
1. The key is composed by appending the names of the properties visited from root (A) to end node property (E or F) delimited by "_".<br />
2. The value is the <see cref="T:Microsoft.Azure.Cosmos.Table.EntityProperty" /> object, instantiated by the value of the end node property.<br />
All key value pairs will be stored in the returned <see cref="T:System.Collections.Generic.IDictionary`2" />.<br /><see cref="M:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.ReadEntity(System.Collections.Generic.IDictionary{System.String,Microsoft.Azure.Cosmos.Table.EntityProperty},Microsoft.Azure.Cosmos.Table.OperationContext)" /> method recomposes the original object (POCO or complex) using the <see cref="T:System.Collections.Generic.IDictionary`2" /> returned by this method and store it in <see cref="P:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.OriginalEntity" /> property.<br />
Properties that are marked with <see cref="T:Microsoft.Azure.Cosmos.Table.IgnorePropertyAttribute" /> in the <see cref="P:Microsoft.Azure.Cosmos.Table.TableEntityAdapter`1.OriginalEntity" /> object will be ignored and not processed by this method.</remarks>
</Docs>
</Member>
</Members>
</Type>